Improving SAT Solver Efficiency Using a Multi-Core Approach
نویسندگان
چکیده
Many practical problems in multiple fields can be converted to a SAT problem, or a sequence of SAT problems, such that their solution immediately implies a solution to the original problem. Despite the enormous progress achieved over the last decade in the development of SAT solvers, there is strong demand for higher algorithm efficiency to solve harder and larger problems. The widespread availability of multi-core, shared memory parallel environments provides an opportunity for such improvements. In this paper we present our results on improving the effectiveness of standard SAT solvers on such architectures, through a portfolio approach. Multiple instances of the same basic solver using different heuristic strategies, for search-space exploration and problem analysis, share information and cooperate towards the solution of a given problem. Results from the application of our methodology to known problems from SAT competitions show relevant improvements over the state of the art and yield the promise of further advances.
منابع مشابه
Lingeling Essentials, A Tutorial on Design and Implementation Aspects of the the SAT Solver Lingeling
One of the design principles of the state-of-the-art SAT solver Lingeling is to use as compact data structures as possible. These reduce memory usage, increase cache efficiency and thus improve runtime, particularly, when using multiple solver instances on multi-core machines, as in our parallel portfolio solver Plingeling and our cube and conquer solver Treengeling. The scheduler of a dozen in...
متن کاملConcurrent Clause Strengthening
This work presents a novel strategy for improving SAT solver performance by using concurrency. Rather than aiming to parallelize search, we use concurrency to aid a conventional CDCL search procedure. More concretely, our work extends a conventional CDCL SAT solver with a second computation thread, which is solely used to strengthen the clauses learned by the solver. This provides a simple and ...
متن کاملAlgorithm Configuration for Portfolio-based Parallel SAT-Solving
Since 2004, the increases in processing power enabled by Moore’s law have been primarily achieved by means of multi-core processor architectures. To make effective use of modern hardware when solving hard computational problems, it is therefore necessary to employ parallel solution strategies. In this work, we demonstrate how effective parallel solvers for SAT, one of the most widely studied NP...
متن کاملAsynchronous Multi-core Incremental SAT Solving
Solvers for propositional logic formulas, so called SAT solvers, are used in many practical applications. As multi-core and multi-processor hardware has become widely available, parallelizations of such solvers are actively researched. Such research typically ignores the incremental problem specification feature that modern SAT solvers possess. This feature is, however, crucial for many of the ...
متن کاملUnderstanding and Improving a Modern SAT Solver
Propositional satisfiability (SAT) is an NP-complete problem, holding a central place in computer science and engineering. SAT has numerous applications in formal verification, artificial intelligence and other areas. Modern SAT solvers, using an enhanced version of the backtrack search DavisLogemann-Loveland (DLL) algorithm, are able to successfully cope with instances comprising millions of v...
متن کامل